package main

//func main() {
//	var fillInterval = time.Millisecond * 10
//	var capacity = 100
//	var tokenBucket = make(chan struct{}, capacity)
//
//	fillToken := func() {
//		ticker := time.NewTicker(fillInterval)
//		for {
//			select {
//			case <-ticker.C:
//				select {
//				case tokenBucket <- struct{}{}:
//				default:
//				}
//				fmt.Println("current token cnt:", len(tokenBucket), time.Now())
//			}
//		}
//	}
//
//	go fillToken()
//	time.Sleep(time.Hour)
//}
